package com.portal.incurridos.persistence.dao;

import com.portal.incurridos.persistence.enumeration.StateTransactionEnum;
import com.portal.incurridos.persistence.wall.Comment;

/**
 * @author Alan Dávila
 * e-mail ustargab@gmail.com
 * date 23/11/2013 00:27:19
 */
public interface CommentDao {

	/**
	 * Get the information about the comment.
	 * @param comment Identifier of the required comment.
	 * @return Object with the information.
	 */
	Comment get(final Long comment);
	/**
	 * Create a new Comment associated with a card.
	 * @param comment Object with the information.
	 * @return A new object.
	 */
	Comment create(final Comment comment);
	/**
	 * Update a existing comment.
	 * @param comment Object to update.
	 * @return State of the operation.
	 */
	StateTransactionEnum update(final Comment comment);
	/**
	 * Delete a existing comment.
	 * @param comment object to delete.
	 * @return State of the operation.
	 */
	StateTransactionEnum delete(final Comment comment);
}
